home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / Visual Cafe Pro v1.0 / TUTORIAL.BIN / Date.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-01-30  |  1.8 KB  |  51 lines

  1. package symjava.sql;
  2.  
  3. public class Date extends java.util.Date {
  4.    public Date(int year, int month, int day) {
  5.       super(year, month, day);
  6.    }
  7.  
  8.    public Date(long date) {
  9.       super(date);
  10.    }
  11.  
  12.    public static Date valueOf(String s) {
  13.       if (s == null) {
  14.          throw new IllegalArgumentException();
  15.       } else {
  16.          int firstDash = s.indexOf(45);
  17.          int secondDash = s.indexOf(45, firstDash + 1);
  18.          if (firstDash > 0 & secondDash > 0 & secondDash < s.length() - 1) {
  19.             int year = Integer.parseInt(s.substring(0, firstDash)) - 1900;
  20.             int month = Integer.parseInt(s.substring(firstDash + 1, secondDash)) - 1;
  21.             int day = Integer.parseInt(s.substring(secondDash + 1));
  22.             return new Date(year, month, day);
  23.          } else {
  24.             throw new IllegalArgumentException();
  25.          }
  26.       }
  27.    }
  28.  
  29.    public String toString() {
  30.       int year = super.getYear() + 1900;
  31.       int month = super.getMonth() + 1;
  32.       int day = super.getDate();
  33.       String yearString = Integer.toString(year);
  34.       String monthString;
  35.       if (month < 10) {
  36.          monthString = "0" + month;
  37.       } else {
  38.          monthString = Integer.toString(month);
  39.       }
  40.  
  41.       String dayString;
  42.       if (day < 10) {
  43.          dayString = "0" + day;
  44.       } else {
  45.          dayString = Integer.toString(day);
  46.       }
  47.  
  48.       return yearString + "-" + monthString + "-" + dayString;
  49.    }
  50. }
  51.